Skip to content

Fix web form docs and generate LLMs text in CI#362

Merged
koriym merged 4 commits into
bearsunday:masterfrom
koriym:codex/ci-generate-llms-full
May 25, 2026
Merged

Fix web form docs and generate LLMs text in CI#362
koriym merged 4 commits into
bearsunday:masterfrom
koriym:codex/ci-generate-llms-full

Conversation

@koriym

@koriym koriym commented May 21, 2026

Copy link
Copy Markdown
Member

Summary

  • update the Web Form manual pages to match Ray.WebFormModule 1.0 usage
  • generate llms-full.txt during the Pages build and local serve setup
  • stop tracking generated llms-full.txt

Verification

  • zsh -ic "sphp85; php bin/gen_llms.php"
  • bundle exec jekyll build
  • git diff --cached --check

Summary by CodeRabbit

リリースノート

  • Documentation

    • フォームドキュメントを大幅更新。WebFormModule のインストール手順、設定方法、使用例を整理しました。
    • バリデーション機能と CSRF 対策の説明を改善。0.x から 1.0 へのマイグレーション手順を追加しました。
  • Bug Fixes

    • エラーハンドリングを強化し、ファイル操作失敗時の例外処理を明示的に追加しました。

Review Change Stack

@coderabbitai

coderabbitai Bot commented May 21, 2026

Copy link
Copy Markdown
Contributor

Warning

Rate limit exceeded

@koriym has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 29 minutes and 21 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: c5d75a18-84a8-40aa-b301-74d479122870

📥 Commits

Reviewing files that changed from the base of the PR and between 5b241bf and 6f42b20.

📒 Files selected for processing (2)
  • manuals/1.0/en/form.md
  • manuals/1.0/ja/form.md

Walkthrough

Jekyll ドキュメント生成パイプラインに LLM コンプライアンス対応テキストの PHP スクリプト実行を統合し、ファイル I/O エラー処理を強化。同時にフォームモジュール 1.0 の英日両言語ドキュメントを WebFormModule インストール、FormValidation 属性、CSRF opt-in 仕様、移行ガイドで更新。

Changes

ドキュメント生成と形式化

Layer / File(s) Summary
ビルドワークフローとローカル起動の基盤化
.github/workflows/jekyll.yml, bin/serve_local.sh, .gitignore
GitHub Actions ワークフローで builddeploy ジョブに job レベルの権限を分離配置し、build 前に PHP 8.3 セットアップと php bin/gen_llms.php 実行を統合。ローカル開発環境でも serve_local.sh に PHP スクリプト実行を追加。llms-full.txt を Git 対象外に指定。
LLM 生成スクリプトの例外処理強化
bin/gen_llms.php
llms.txt 読み込み失敗、ファイル書き込み失敗、フロントマター削除失敗を例外で検出する write() ヘルパメソッドを追加実装。expand/processUrl/readLocalFile/processLinks の各処理に明示的なエラーチェックを組み込み。
フォームモジュール手册(英語)の再構成
manuals/1.0/en/form.md
WebFormModule インストール手順、Form クラスの init/submit/__toString 実装パターン、FormValidation 属性による検証、CSRF opt-in と CsrfProtection の関係、ValidationException から vnd.error+json への出力例、0.x から 1.0 への移行チェックリストと Claude Code 自動移行ツール案内、デモ起動手順を包括的に更新。
フォームモジュール手册(日本語)の再構成
manuals/1.0/ja/form.md
WebFormModule と AuraInputModule の役割分離、MyForm サンプルの init/submit/__toString 実装、FormValidation 属性と onFailure パラメータ、input/error レンダリング、CSRF が CsrfProtection 付きメソッドでのみ検証される仕様説明、FormVndErrorModule による例外伝播と error 出力、ローカル PHP ビルトインサーバによるデモ起動を整理・更新。

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 20.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PRのタイトル「Fix web form docs and generate LLMs text in CI」は、変更セット全体の主要な2つの目的(Web Formドキュメントの修正とCI内でのLLMsテキスト生成)を正確かつ簡潔に要約しており、スキャンする開発者がプルリクエストの主要な変更を明確に理解できます。
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@koriym

koriym commented May 21, 2026

Copy link
Copy Markdown
Member Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented May 21, 2026

Copy link
Copy Markdown
Contributor
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@manuals/1.0/ja/form.md`:
- Around line 56-57: The validation rule and error message disagree: the chain
$this->filter->validate('name')->is('alnum') enforces alphanumeric but
$this->filter->useFieldMessage('name', 'Name must be alphabetic only.') says
alphabetic-only; fix by making them consistent—either change the rule to
is('alpha') if you want letters only, or update the message to mention
alphanumeric (e.g., "Name must be alphanumeric only.") so the message matches
the is('alnum') rule; update the line with validate('name')->is(...) or the
useFieldMessage('name', ...) accordingly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 624f538e-24c5-46eb-ac45-4a61f01a5510

📥 Commits

Reviewing files that changed from the base of the PR and between 5903384 and 5b241bf.

📒 Files selected for processing (7)
  • .github/workflows/jekyll.yml
  • .gitignore
  • bin/gen_llms.php
  • bin/serve_local.sh
  • llms-full.txt
  • manuals/1.0/en/form.md
  • manuals/1.0/ja/form.md

Comment thread manuals/1.0/ja/form.md Outdated
@koriym
koriym merged commit 422ec9d into bearsunday:master May 25, 2026
@koriym
koriym deleted the codex/ci-generate-llms-full branch May 25, 2026 00:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant